package main.java.viable;

public class Contrato extends Carta {

	/**
	 * @uml.property name="color"
	 */
	private Color color;

	/**
	 * Getter of the property <tt>color</tt>
	 * 
	 * @return Returns the color.
	 * @uml.property name="color"
	 */
	public Color getColor() {
		return color;
	}

	/**
	 * Setter of the property <tt>color</tt>
	 * 
	 * @param color
	 *            The color to set.
	 * @uml.property name="color"
	 */
	public void setColor(Color color) {
		if (color == null) {
			throw new IllegalArgumentException();
		}
		if (color != Color.Verde || color != Color.Azul
				|| color != Color.Magenta || color != Color.Violeta
				|| color != Color.Terracota) {
			throw new IllegalArgumentException();
		}
		this.color = color;
	}

	/**
	 * @uml.property name="estacion"
	 */
	private NombreEstaciones estacion;

	/**
	 * Getter of the property <tt>estacion</tt>
	 * 
	 * @return Returns the estacion.
	 * @uml.property name="estacion"
	 */
	public NombreEstaciones getEstacion() {
		return estacion;
	}

	/**
	 * Setter of the property <tt>estacion</tt>
	 * 
	 * @param estacion
	 *            The estacion to set.
	 * @uml.property name="estacion"
	 */
	public void setEstacion(NombreEstaciones estacion) {
		if(estacion == null){
			throw new IllegalArgumentException();
		}
		this.estacion = estacion;
	}

	/**
	 * @uml.property name="esAlmanaque"
	 */
	private boolean esAlmanaque;

	/**
	 * Getter of the property <tt>esAlmanaque</tt>
	 * 
	 * @return Returns the esAlmanaque.
	 * @uml.property name="esAlmanaque"
	 */
	public boolean isEsAlmanaque() {
		return esAlmanaque;
	}

	/**
	 * Setter of the property <tt>esAlmanaque</tt>
	 * 
	 * @param esAlmanaque
	 *            The esAlmanaque to set.
	 * @uml.property name="esAlmanaque"
	 */
	public void setEsAlmanaque(boolean esAlmanaque) {
		this.esAlmanaque = esAlmanaque;
	}

	public Contrato(int idCarta, Color color, boolean esAlmanaque,
			NombreEstaciones estacion) {
		super(idCarta);
		this.color = color;
		this.esAlmanaque = esAlmanaque;
		this.estacion = estacion;
	}

	public String toString(){
		String ret;
		if(getEstacion() == null){
			ret = "Almanaque" + getColor();
		}else{
			ret = "Contrato de " + getEstacion();
		}
		return ret;
		
	}
}
